Platform Explorer / Nuxeo Platform 2023.9

Component org.nuxeo.ecm.directory.ui.DirectoryUIManager

Resolution Order

359
The resolution order represents the order in which this component has been resolved by the Nuxeo Runtime framework.
You can influence this order by adding "require" tags in your component declaration, to make sure it is resolved after another component.

Start Order

834
The start order represents the order in which this component has been started by the Nuxeo Runtime framework.
This number is interesting to tweak if your Java component interacts with other components, and needs to be started before or after another one.
It can be changed by implementing the method "Component#getApplicationStartedOrder()" on your Java component: components are sorted according to this reference value, in increasing order.
The default value is 1000, and the repository initialization uses number 100. Negative values can also be used.

Implementation

Class: org.nuxeo.ecm.directory.ui.DirectoryUIManagerImpl

Services

Extension Points

XML Source

<?xml version="1.0"?>
<component name="org.nuxeo.ecm.directory.ui.DirectoryUIManager">

  <implementation class="org.nuxeo.ecm.directory.ui.DirectoryUIManagerImpl" />

  <service>
    <provide interface="org.nuxeo.ecm.directory.api.ui.DirectoryUIManager" />
  </service>

  <extension-point name="directories">
    <documentation>
      This extension point can be used to register directory ui information.
      <p />
      Example:
      <code>
        <directory name="continent" layout="vocabulary" sortField="label">
          <deleteConstraint
            class="org.nuxeo.ecm.directory.api.ui.HierarchicalDirectoryUIDeleteConstraint">
            <property name="targetDirectory">country</property>
            <property name="targetDirectoryField">parent</property>
          </deleteConstraint>
        </directory>
        <directory name="country" layout="country_vocabulary"
          sortField="parent" />
      </code>
      <p />
      The following fields can be used on a directory UI declaration :
      <ul>
        <li>
          name: name of the directory to display, as used in the directory
          declaration
        </li>
        <li>
          layout: name of the layout to use for display. This layout must know
          how to render elements in a table, so it uses a specific template.
        </li>
        <li>
          sortField: name of the field to sort on when presenting directory
          items in a table. Defaults to the directory id field if not set.
        </li>
        <li>
          view: name of the JSF view to use to present the directory. Defaults
          to "view_directory" if not set.
        </li>
        <li>
          enabled: boolean stating if the declaration is enabled. This is
          useful to disable some preceding declaration, as long as the same
          directory name is used. Defaults to "false" if not set.
        </li>
      </ul>
      <p />
      Here the layouts "vocabulary" and "country_vocabulary" have to be
      registered as layouts. The delete constraint uses a standard class that
      checks if no child entry references a parent entry before granting
      deletion of the parent entry. The following parameters can be used on this
      class:
      <ul>
        <li>
          targetDirectory: the directory holding the constraint (the child
          directory).
        </li>
        <li>
          targetDirectoryField: the field specifying the parent id in the
          child directory.
        </li>
      </ul>
      Any other delete constraint can be set, taking other specific parameters,
      provided it follows the
      <em>org.nuxeo.ecm.directory.api.ui.DirectoryUIDeleteConstraint
      </em>
      interface.
    </documentation>

    <object class="org.nuxeo.ecm.directory.api.ui.DirectoryUIDescriptor" />
  </extension-point>

</component>